package com.system.api.rbac.entity.vo;

import com.system.api.setting.enums.MenuTypeEnum;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.yang.common.core.annotation.Chinese;

import java.io.Serializable;
import java.util.List;

import static com.system.common.constant.MessageConstant.MENU_NAME_EMPTY;
import static com.system.common.constant.MessageConstant.PARENT_EMPTY;

/**
 *  菜单列表
 * @author: lslands
 * @description:   
 * @version：v1.0
 * @date:    2024/6/24 22:56
 */
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class MenuTreeVo implements Serializable {

    private Long id;
    /**
     * 名称
     */
    private String title;
    /**
     * 国际化KEY
     */
    private String locale;
    /**
     * 图标
     */
    private String icon;
    /**
     * 路由地址
     */
    private String path;
    /**
     * 重定向
     */
    private String redirect;
    /**
     * 组件地址
     */
    private String component;
    /**
     * 菜单状态(true显示/false隐藏)
     */
    private Boolean visible;

    private Integer enabled;

    private List<MenuTreeVo> children;
}
